// 这里是封装axios
import ajax from 'axios'
// 在一个普通的.js文件（不是.vue组件）中，如何去获取vuex中的数据？
// 答：直接引入，获取其中的state即可
import store from '@/store/index.js'
const instance1 = ajax.create({
  baseURL: 'http://ttapi.research.itcast.cn',
  timeout: 3000

})
const instance2 = ajax.create({
  baseURL: 'http://api-toutiao-web.itheima.net',
  timeout: 3000

})
// 这了校验token
instance1.interceptors.request.use(function (config) {
  // 在发送请求之前
  // 检查在vuex中是否有token信息，如果有，就加到header中
  const token = store.state.tokenInfo.token
  console.log(token)
  console.log('所有的请求在发出去之前，都会到这里来', store.state.tokenInfo, token)
  if (token) {
    // 加到header
    //    Bearer空格token  这个格式是后端要求的
    config.headers.Authorization = `Bearer ${token}`
  }
  return config
}, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error)
})
export { instance1, instance2 }
export default instance1
